# -*- coding: utf-8 -*-
# time: 2025/4/11 09:19
# file: tokenizer_ts.py
# author: hanson
"""
AutoTokenizer.from_pretrained(model_id, trust_remote_code=True) 是 Hugging Face transformers
库中用于加载大模型（如 Qwen、DeepSeek、LLaMA 等）的分词器（Tokenizer）的核心方法。
（2）注释并修改（可能在conda\envs\[virtual envs]\lib\python3.x\site-packages\[加载huggingface的模块]\config.py中）
"""
import os

from transformers import AutoTokenizer, AutoModelForCausalLM
# 加载分词器（从Hub下载或读取本地缓存）

tokenizer = AutoTokenizer.from_pretrained(
    r"E:\soft\model\qwen\Qwen\Qwen2___5-0___5B-Instruct",
    trust_remote_code=True  # 允许运行远程代码以支持自定义分词器
)

model = AutoModelForCausalLM.from_pretrained(
    r"E:\soft\model\qwen\Qwen\Qwen2___5-0___5B-Instruct",
    torch_dtype="auto",
    device_map="auto"
)
# 使用分词器处理文本
text = "你好，DeepSeek！"
inputs = tokenizer(text, return_tensors="pt")  # 返回PyTorch张量
print(inputs)
# 输出示例：{'input_ids': tensor([[ 101, 2345,  102]]), 'attention_mask': tensor([[1, 1, 1]])}